# coding=utf-8
"""
CSDN_Python闯关特训营
第一周闯关作业_赵文川
本周共计3个作业：
1) 使用while和for…in两个循环分别输出四种九九乘法表效果（共计8个）。
2) 使用文件和目录操作，定义一个统计指定目录大小的函数（注意目录中还有子目录）。
3) 参考第9节的综合案例中的学生信息管理，来实现一个自动取款机的存取款模拟效果。要求有登陆和退出、查询余额、取钱，存钱等操作。
详情查看:http://csdn-edu-teacher.oss-cn-beijing.aliyuncs.com/230-170-1-1563872807.zip?OSSAccessKeyId=LTAInu0oRIELrjsF&Signature=viUMd38QKMzZGaKLDluUB2nVUuE%3D&Expires=1577357163
"""


#  2) 使用文件和目录操作，定义一个统计指定目录大小的函数（注意目录中还有子目录）。
import os
def dirSize(dir):
    sum = 0
    if os.path.isfile(dir):
        sum += os.path.getsize(dir)
    elif os.path.isdir(dir):
        ldir = os.listdir(dir)
        for i in ldir:
            file = os.path.join(dir, i)
            if os.path.isfile(file):
                sum += os.path.getsize(file)
            elif os.path.isdir(file):
                sum += dirSize(file)
    return sum

print(dirSize('./MultiplicationMable.py'))
